package com.zgh.usercenter.service;

import com.xxg.base.module.Operater;
import com.xxg.base.module.Page;
import com.xxg.base.module.PageData;
import com.xxg.exception.BaseException;
import com.zgh.usercenter.module.*;

import java.util.List;
import java.util.Map;

public interface IBaseDataService {

	//-----------基础数据相关接口开始-----------//
	public AdminArea saveOrUpdateAdminArea(AdminArea adminArea, Operater operater) throws BaseException;
	public void deleteAdminArea(Long adminAreaId, Operater operater) throws BaseException;
	public AdminArea getAdminArea(Long adminAreaId) throws BaseException;
	public String getAdminAreaName(String adminAreaCode) throws BaseException;
	public List<AdminArea> listAdminArea(Map<String, Object> params, Operater operater, PageData pageData) throws BaseException;
	public Integer countAdminArea(Map<String, Object> params, Operater operater) throws BaseException;
	public Page<AdminArea> showAdminAreaPage(Page<AdminArea> page, Operater operater) throws BaseException;

	public CompanyType saveOrUpdateCompanyType(CompanyType companyType, Operater operater) throws BaseException;
	public void deleteCompanyType(Long companyTypeId, Operater operater) throws BaseException;
	public CompanyType getCompanyType(Long companyTypeId) throws BaseException;
	public String getCompanyTypeName(String companyTypeCode) throws BaseException;
	public List<CompanyType> listCompanyType(Map<String, Object> params, Operater operater, PageData pageData) throws BaseException;
	public Integer countCompanyType(Map<String, Object> params, Operater operater) throws BaseException;
	public Page<CompanyType> showCompanyTypePage(Page<CompanyType> page, Operater operater) throws BaseException;

	public CreditType saveOrUpdateCreditType(CreditType creditType, Operater operater) throws BaseException;
	public void deleteCreditType(Long creditTypeId, Operater operater) throws BaseException;
	public CreditType getCreditType(Long creditTypeId) throws BaseException;
	public List<CreditType> listCreditType(Map<String, Object> params, Operater operater, PageData pageData) throws BaseException;
	public Integer countCreditType(Map<String, Object> params, Operater operater) throws BaseException;
	public Page<CreditType> showCreditTypePage(Page<CreditType> page, Operater operater) throws BaseException;

	public Industry saveOrUpdateIndustry(Industry industry, Operater operater) throws BaseException;
	public void deleteIndustry(Long industryId, Operater operater) throws BaseException;
	public Industry getIndustry(Long industryId) throws BaseException;
	public String getIndustryName(String industryCode) throws BaseException;
	public List<Industry> listIndustry(Map<String, Object> params, Operater operater, PageData pageData) throws BaseException;
	public Integer countIndustry(Map<String, Object> params, Operater operater) throws BaseException;
	public Page<Industry> showIndustryPage(Page<Industry> page, Operater operater) throws BaseException;

	public Economy saveOrUpdateEconomy(Economy economy, Operater operater) throws BaseException;
	public void deleteEconomy(Long economyId, Operater operater) throws BaseException;
	public Economy getEconomy(Long economyId) throws BaseException;
	public String getEconomyName(String economyCode) throws BaseException;
	public List<Economy> listEconomy(Map<String, Object> params, Operater operater, PageData pageData) throws BaseException;
	public Integer countEconomy(Map<String, Object> params, Operater operater) throws BaseException;
	public Page<Economy> showEconomyPage(Page<Economy> page, Operater operater) throws BaseException;

	public JobRank saveOrUpdateJobRank(JobRank jobRank, Operater operater) throws BaseException;
	public void deleteJobRank(Long jobRankId, Operater operater) throws BaseException;
	public JobRank getJobRank(Long jobRankId) throws BaseException;
	public String getJobRankName(String jobRankCode) throws BaseException;
	public List<JobRank> listJobRank(Map<String, Object> params, Operater operater, PageData pageData) throws BaseException;
	public Integer countJobRank(Map<String, Object> params, Operater operater) throws BaseException;
	public Page<JobRank> showJobRankPage(Page<JobRank> page, Operater operater) throws BaseException;
	//-----------基础数据相关接口结束-----------//
}
